package com.ruoyi.live.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 直播房间对象 tb_room
 * 
 * @author sun
 * @date 2023-01-30
 */
public class TbRoom extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** ID */
    private Integer roomId;

    /** 房间编号 */
    @Excel(name = "房间编号")
    private String roomNo;

    /** 课程Id */
    @Excel(name = "课程Id")
    private Integer coursId;

    /** 开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开始时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date openTime;

    /** 结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date closeTime;

    /** 推流地址 */
    @Excel(name = "推流地址")
    private String pushUrl;

    /** 播放地址 */
    @Excel(name = "播放地址")
    private String playUrl;

    /** 封面图片 */
    @Excel(name = "封面图片")
    private String coverUrl;

    /** 房间状态0：未开始，1：正在直播，2：直播结束 */
    @Excel(name = "房间状态0：未开始，1：正在直播，2：直播结束")
    private Integer roomState;

    /** 主持人 */
    @Excel(name = "主持人")
    private String hostName;

    /** 房间描述 */
    @Excel(name = "房间描述")
    private String roomDesc;

    /** 删除状态0：未删除，2：已删除 */
    private Integer delFlag;

    /** 直播状态：0：正常    2：封禁 */
    @Excel(name = "直播状态：0：正常    2：封禁")
    private Integer status;

    public void setRoomId(Integer roomId) 
    {
        this.roomId = roomId;
    }

    public Integer getRoomId() 
    {
        return roomId;
    }
    public void setRoomNo(String roomNo) 
    {
        this.roomNo = roomNo;
    }

    public String getRoomNo() 
    {
        return roomNo;
    }
    public void setCoursId(Integer coursId) 
    {
        this.coursId = coursId;
    }

    public Integer getCoursId() 
    {
        return coursId;
    }
    public void setOpenTime(Date openTime) 
    {
        this.openTime = openTime;
    }

    public Date getOpenTime() 
    {
        return openTime;
    }
    public void setCloseTime(Date closeTime) 
    {
        this.closeTime = closeTime;
    }

    public Date getCloseTime() 
    {
        return closeTime;
    }
    public void setPushUrl(String pushUrl) 
    {
        this.pushUrl = pushUrl;
    }

    public String getPushUrl() 
    {
        return pushUrl;
    }
    public void setPlayUrl(String playUrl) 
    {
        this.playUrl = playUrl;
    }

    public String getPlayUrl() 
    {
        return playUrl;
    }
    public void setCoverUrl(String coverUrl) 
    {
        this.coverUrl = coverUrl;
    }

    public String getCoverUrl() 
    {
        return coverUrl;
    }
    public void setRoomState(Integer roomState) 
    {
        this.roomState = roomState;
    }

    public Integer getRoomState() 
    {
        return roomState;
    }
    public void setHostName(String hostName) 
    {
        this.hostName = hostName;
    }

    public String getHostName() 
    {
        return hostName;
    }
    public void setRoomDesc(String roomDesc) 
    {
        this.roomDesc = roomDesc;
    }

    public String getRoomDesc() 
    {
        return roomDesc;
    }
    public void setDelFlag(Integer delFlag) 
    {
        this.delFlag = delFlag;
    }

    public Integer getDelFlag() 
    {
        return delFlag;
    }
    public void setStatus(Integer status) 
    {
        this.status = status;
    }

    public Integer getStatus() 
    {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("roomId", getRoomId())
            .append("roomNo", getRoomNo())
            .append("coursId", getCoursId())
            .append("openTime", getOpenTime())
            .append("closeTime", getCloseTime())
            .append("pushUrl", getPushUrl())
            .append("playUrl", getPlayUrl())
            .append("coverUrl", getCoverUrl())
            .append("roomState", getRoomState())
            .append("hostName", getHostName())
            .append("roomDesc", getRoomDesc())
            .append("delFlag", getDelFlag())
            .append("status", getStatus())
            .append("createBy", getCreateBy())
            .append("updateBy", getUpdateBy())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
